/*
 * Mesh.h
 *
 *  Created on: Jun 1, 2011
 *      Author: gilang
 */

#ifndef Mesh_H_
#define Mesh_H_
#include "LineElement.h"

class Mesh {
private:
	Element *elements;
	int size;
public:
	Mesh();
	Mesh(int elementSize);
	virtual ~Mesh();
	virtual void addElement(Element &el, const int i);
	virtual Element& operator()(const int i);
	Matrix<double> assemblyStiffMatrix(Element &el, const double &area, const int i);
	Vector<double> assemblyLoadVector(Element &el,const double &area, double gen, const int i);
	Matrix<double> assemblyGlobalMatrix(const int totalNode);
	Vector<double> assemblyGlobalVector(const int totalNode);

};

#endif /* Mesh_H_ */
